﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SeizyUtils.Common.Data;

namespace SeizyUtils.Binder
{
    /// <summary>
    /// IRecord をプロパティクラスにバインドする機能を提供します。
    /// </summary>
    interface IDataBinder
    {
        /// <summary>
        /// データをバインドします。
        /// </summary>
        /// <typeparam name="T">バインド先のデータ型</typeparam>
        /// <param name="record">バインド元のレコード</param>
        /// <param name="data">バインド先のデータオブジェクト</param>
        /// <returns>引数のdataと同じインスタンスを返す</returns>
        T bindObject<T>(IRecord record, T data);
    }
}
